Electronic display of serial text using optimal recognition positions

ABSTRACT

Various embodiments are disclosed that relate to electronic display of serially presented text using techniques for placement of an optimal recognition position of words at a fixed display location. In some embodiments, the optimal recognition position is based on empirically determined optimal recognition positions. In some embodiments, an optimal recognition position character is displayed at the fixed display location. In other embodiments, an optimal recognition proportionate position is displayed at the fixed display location. Various related techniques for processing and displaying text are further disclosed herein.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a divisional of co-pending U.S. patent applicationSer. No. 15/433,983 filed on Feb. 15, 2017, which is a continuation ofU.S. patent application Ser. No. 14/542,409 filed on Nov. 14, 2014,which is a continuation of U.S. patent application Ser. No. 13/547,982filed on Jul. 12, 2012, now U.S. Pat. No. 8,903,174. The entiredisclosures of those applications are hereby incorporated by referenceherein.

TECHNICAL FIELD AND BACKGROUND OF THE INVENTION

The present invention relates to apparatuses and methods for enablingimproved reading in an electronic display.

Despite heavy technological (digital) advances, the illustration oftextual information has not fundamentally changed. Texts are typicallydisplayed in lines such that the reader's eye moves sequentially fromword to word. With each eye movement (“saccade”) time is spentrefixating the eye on the new word in order to recognize and process itsmeaning. The fixation takes about 240 milliseconds (“ms”) per word onaverage. Only 20% of the time for fixation is used for processing thecontent. It is also very common that a saccade does not reach thecorrect fixation point, so additional eye movement is required forreading a word.

One display technique for reducing saccades is Rapid Serial VisualPresentation, hereinafter referred to as “RSVP.” RSVP was firstintroduced in the 1970s as a technique for presenting text one word at atime in a display. Many references since then have provided informationon the use of RSVP in a variety of applications. Commercially availableproducts based on RSVP include “Zap Reader” (www.zapreader.com/reader)and “Spreeder” (www.spreeder.com). Some prior methods exist forimproving the effectiveness of an RSVP by varying the display time of aword in the display based on word length and word type (see, U.S. Pat.No. 6,130,968 to McIan et al. (“McIan”)) and based on word frequency(see WO/37256 by Goldstein et al. (“Goldstein 2002”)). While thesetechniques are beneficial in improving comprehension of the displayedtext, none of these teach how to minimize saccade movement during thepresentation of a word or words in the RSVP display.

SUMMARY OF THE INVENTION

RSVP reduces saccades but does not eliminate them. In previousreferences on RSVP, each word (or multiple words in someimplementations) is centered in the display. Previous research on wordrecognition, however, has demonstrated that the eye tends to fixate oncharacters that are to the left of the center. O'Regan conductedexperiments on the fixation point in words ranging in length up to 11characters, clearly showing that word recognition (naming acuity)depends strongly on the position in the word where the eye is fixatingat the moment the word appears. (See “Convenient Fixation LocationWithin Isolated Words of Different Length and Structure” J. K. O'Reganet al. in Journal of Experimental Psychology 1984 Vol. 10, No. 2,250-257) (“O'Regan”). Brysbaert and Nazir (“VISUAL CONSTRAINTS INWRITTEN WORD RECOGNITION: EVIDENCE FROM THE OPTIMAL VIEWING POSITIONEFFECT,” paper by Marc Brysbaert, Royal Holloway, University of Londonand Tatjana Nazir, Université Lyon 1, contact address: Marc BrysbaertRoyal Holloway, University of London, Department of Psychology EghamTW20 OEX, United Kingdom, marc.brysbaert@rhul.ac.uk) (“Brysbaert andNazir”) determined that there is an optimal viewing position for maximumreading speed and empirically determined this viewing position for wordsof 3, 5, 7, and 9 characters in length. However, not only was thisresearch never applied to RSVP, it provides insufficient information fora practical RSVP application. Therefore, embodiments of the presentinvention rely on the inventors having established the ORP characterpositions for words of 4, 6, 8, and 10-13 characters in length.

Words longer than three characters have an optimal fixation position tothe left of the middle character for which the time required for wordrecognition is the shortest. For each letter of deviation from thisoptimal position, about 20 milliseconds (“ms”) are added to lexicaldecision time or naming latency. Rayner conducted similar research thatdemonstrated that it is possible to get information about a word from upto 4 characters from the left side of the fixation position and up to 15characters to the right side, resulting in a perceptual span of 20characters. (See Keith Rayner et al., “Asymmetry of the effective visualfield in reading,” in Perception and Psychophysics, 1980, 27(6),537-534) (“Rayner 1980”). Hyrskytar (see Hyrskykari, Aulikki, “Eyes inAttentive Interfaces: Experiences from Creating iDict, a Gaze-AwareReading Aid”, Academic Dissertation, Department of Computer Sciences,University of Tampere, in Dissertations in Interactive Technology,Number 4, Tampere 2006, pg 49) and Danhaene (see Dehaene, Stanislas,“Les Neurones de la Lecture”, Editions Odile Jacob, France, September2007) have also taught that the maximum character length of a wordwithout saccade movement is 20 characters. However, further research byRayner demonstrated that comprehension of the word was significantlyless if the total number of characters is greater than 13 characters.(See Rayner, K. “Eye movements and cognitive processes in reading,visual search, and scene perception.” In J. M. Findlay, R. Walker, & R.W. Kentridge (Eds.), Eye movement research: Mechanisms, processes andapplications (pp. 3-22). Amsterdam: North Holland, 1995) (“Rayner1995”).

Therefore, it is possible to have good recognition of words of up to 13characters in length from a single fixation that is positioned on aspecific character that is off center toward the beginning of the word(e.g., to the left of the middle character for languages that are readfrom left to right). Words are rarely greater than 13 characters(according to Sigurd, only 0.4% of the words in the English language arelonger than 13 characters—see Sigurd, B. et al, “Word Length, SentenceLength and Frequency—ZIPF Revisited”, Studia Lingustica 58(1), pp 37-52,Blackwell Publishing Ltd, Oxford UK, 2004) and therefore, for the vastmajority of words, it is preferable to limit the number of characters tothe right side of the fixation point to 8 characters.

None of the previous research on word recognition has been applied toRSVP. In a conventional RSVP, the optimal fixation position will shiftas words of differing lengths are sequentially displayed in the centerof the display, resulting in saccade movements as the eyes shift to theoptimal fixation position. The reader has to refocus on the displayevery time a new word appears that is of a different length than theprevious word. The reader's eyes will move from one character to thenext to find the optimal position, which is also referred to as arecovery saccade. In addition, when a longer word follows a shorter one,the saccadic movement direction will be from right to left. When readingtext in lines in a traditional paragraph display, most saccadic movementis from left to right so the reader is accustomed to this type of eyemovement. Only occasionally, if the optimal fixation position is notfound directly, the reader may have to move back from right to left.Thus conventional RSVP forces the reader to experience saccades whichare not normal. Conventional RSVP approaches offer no solution to theseproblems.

In order to prevent or minimize recovery saccades in an RSVP, it ispreferable to display each word such that the optimal fixation positiondoes not shift in the display. The focal point of the reader can thenremain fixed on the optimal fixation position, which is a specific pointin each word that is determined by the total number of characters orwidth of the word. This optimal recognition position, hereinafterreferred to as the “ORP,” can be identified in the display such that thereader's eyes are directed to focus there as the words are seriallypresented. An RSVP which incorporates an ORP is hereinafter referred toas “ORP-RSVP.” With an ORP-RSVP, text can then be presented at a fasterrate because no saccades occur during the presentation. In addition, theelimination of saccades reduces eye fatigue and makes it morecomfortable, resulting in a better reading experience for the user.

Many application areas benefit from an ORP-RSVP which enables moreinformation to be presented faster in a very small display. It can beutilized not just on computers for faster reading of long texts, butpreferably also on portable electronic devices such as mobile phones,smartphones, multi-media players, e-readers, tablet/touchpad or laptopPCs, and other communication devices.

One embodiment of the present invention provides a method for seriallydisplaying text on an electronic display comprising identifying anoptimal recognition position for a plurality of words to be displayedand serially displaying the plurality of words such that the optimalrecognition position of each word is displayed at a fixed displaylocation on the electronic display. In one embodiment, the optimalrecognition position is identified as a character in the word. Inanother embodiment, the optimal recognition position is identified as aproportionate position relative to the width of the word in pixels. Insome embodiments, visual aids are used to mark the fixed displaylocation (e.g., hash marks) and/or an optimal recognition positionwithin the word (e.g., different colored font).

Some embodiments of the invention further comprise using a relativedisplay multiplier for each word based at least in part on word length,the relative display multiplier being used in determining a display timefor the word. In some embodiment of the invention, blank elements areinserted between first and second sentences and displayed for a lengthof time that varies based on a word length of the first sentence. Insome embodiments of the invention, words over thirteen characters longare displayed such that a first portion of the word is displayed (alongwith a hyphen) as a first display element and a second portion of theword is displayed as a second display element.

Some embodiments comprise a computer program product includinginstructions for displaying text in accordance with principles of thepresent invention. Some embodiments comprise a computer program productincluding instructions for preparing and streaming text to be displayedin accordance with principles of the present invention. Some embodimentscomprise an apparatus configured to carry out serial text display inaccordance with principles of the present invention. Some embodimentscomprise an apparatus configured to prepare and stream text to bedisplayed in accordance with principles of the present invention.

These and other embodiments are more fully described below.

BRIEF DESCRIPTION OF THE DRAWINGS

The novel features of the invention are set forth in the appendedclaims. However, for purpose of explanation, several aspects of aparticular embodiment of the invention are described by reference to thefollowing figures.

FIG. 1 illustrates a text display system in accordance with anembodiment of the present invention.

FIGS. 2a-d illustrate the display portion of the embodiment of FIG. 1.

FIGS. 2a and 2b show examples of the display area before presentation oftext, and FIGS. 2c and 2d show two examples of displayed words ofdifferent lengths.

FIG. 3 illustrates an architectural block diagram of an embodiment ofthe present invention.

FIG. 4 provides a flow chart architectural diagram of the embodiment ofFIG. 3.

FIGS. 5a and 5b illustrate display time multipliers for display elements(text and blank elements).

FIG. 6 is a flow chart diagram of text pre-processing in accordance withan embodiment of the present invention.

FIG. 7 is a flow chart diagram of text display processing according toan embodiment of the present invention.

FIG. 8 is a flow chart diagram of processing and display of textaccording to an alternative embodiment of the present invention.

FIG. 9 shows a display in accordance with an embodiment of the presentinvention, including user controls and indicators.

DETAILED DESCRIPTION OF THE INVENTION

The following description is presented to enable any person skilled inthe art to make and use the invention, and is provided in the context ofparticular applications and their requirements. Various modifications tothe exemplary embodiments will be readily apparent to those skilled inthe art, and the generic principles defined herein may be applied toother embodiments and applications without departing from the spirit andscope of the invention. Thus, the present invention is not intended tobe limited to the embodiments shown, but is to be accorded the widestscope consistent with the principles and features disclosed herein.

FIG. 1 illustrates a text display system 2000 in accordance with anembodiment of the present invention. In this embodiment, the textdisplay system is implemented on an end user device 210, which isconfigured by computer program product 211 to implement an embodiment ofthe present invention.

End user device 210 includes a display 205. Computer program product 211configures device 210 to serially present text in a Rapid Serial VisualPresentation (“RSVP”) display area 200 on display 205 (for convenience,referenced herein simply as “RSVP display 200”). User device 210 mayinclude any type of electronic device capable of controlling textdisplay. Some examples include desktop computers and portable electronicdevices such as mobile phones, smartphones, multi-media players,e-readers, tablet/touchpad, notebook, or laptop PCs, and othercommunication devices. In some implementations (e.g., a smart phone ore-reader), the display 205 may be packaged together with the rest ofdevice 210. However, in other implementations, a separate display device(e.g., a monitor) maybe be attached to device 210. While the illustratedembodiment shows a graphical border around RSVP display 200, RSVPdisplay 200 simply refers to a region (e.g., a window) on display 205where text is serially presented in accordance with an embodiment of thepresentation and in particular implementations, RSVP display 200 may ormay not be outlined by a graphical border.

In one embodiment, user device 210 has typical computer componentsincluding a processor, memory and an input/output subsystem. In theillustrated embodiment, computer program product 211 is loaded intomemory (not separately shown) to configure device 210 in accordance withthe present invention. In one embodiment, text data may be loaded intomemory for text processing and display processing by device 210 as willbe further described herein. Text data loaded into memory for textprocessing and display processing may be retrieved from persistentstorage on a user device such as device 210 and/or may be received fromone or more server computers 101 through a connection to Internet 102(or other computer network). In an alternative embodiment, at least someprocessing/pre-processing of text data for display in accordance withthe principles illustrated herein may be carried out by one or moreremote computers such as server computers 101 and then sent to end userdevice 210 for display on RSVP display 200 on display 205. In such analternative, some or all of a computer program product such as computerprogram product 211 for implementing an embodiment of the presentinvention may reside on one or more computers such as server computers101 that are remote from end user device 210. In some embodiments, theentire computer program product may be stored and executed on remotecomputers and the results presented within a browser applicationcomponent (e.g. a media player application) of user device 210 (browserapplication and media player application not separately shown).

In an embodiment of the invention, text (which includes, for example,strings of characters—e.g., letters, numbers, symbols, etc. —whichconstitute words, numeric figures, and combinations of both withpunctuation marks and symbols) is presented serially (for example, oneword at a time) within RSVP display 200. As referenced herein, a“display element” will refer to a group of text data that is displayedat one time within RSVP display 200. In other words, display elementsare displayed serially. In the primary embodiment discussed herein, adisplay element will generally consist of one word. However, inalternative embodiments, two words may be presented as a single displayelement. Also, in the primary embodiment, two words are sometimes partof a single display element such as, for example, when a number e.g.,“9,” is displayed together with a unit, e.g. “feet,” so that, forexample, the text “9 feet” may be constitute a single display elementand be presented together.

Also, in some embodiments, a word having a length of greater thanthirteen characters is divided into first and second display elementssuch that a first portion of the word is displayed first (along with ahyphen) and then the second portion of the word is displayed next.

In some embodiments of the present invention, an empirically determinedoptimal recognition position (“ORP”) of each display element ispresented at a fixed location of the RSVP display 200. For example, eachword of a plurality of words is serially presented and positioned in thedisplay such that the ORP is displayed at a fixed display locationwithin display 200 and this enables recognition of each word insuccession with minimal saccade by the reader.

In a first embodiment, hereinafter referred to as the ORP characterposition method, the optimal recognition position has been determinedempirically by positioning the word such that a specific character islocated in the ORP. This character is hereinafter referred to as the ORPcharacter, whose position is specified from the beginning of the word.Brysbaert and Nazir had provided recommendations for the ORP characterposition only for words of 3, 5, 7, and 9 characters in length. Certainembodiments of the present invention rely on having determined ORPcharacter positions for words of 4, 6, 8, and 10-13 characters inlength. A ratio based on the ORP character position was created in orderto interpolate between the established values for words of 3, 5, 7, and9 characters in length, and to extrapolate for words of 10-13 charactersin length. This ORP character position ratio is determined by thefollowing formula:

ORP Character Position Ratio=(ORP Character Position−1)/Total Number ofText Characters

The values of the ORP character position for words of 4, 6, 8, and 10-13characters in length are determined by keeping the ORP characterposition ratio between 0.20 to 0.33 and applying the above formula. Theresulting values of the ORP character positions, which are summarized inTABLE I, were empirically tested and confirmed by the inventors with 20subjects utilizing texts displayed according to this embodiment. TABLE Isummarizes the ORP character position as the total number of textcharacters ranges from 3 characters to preferably 13 characters, but notmore than 20 characters (note that “characters” in this context—i.e. forpurposes of counting the number of characters in a word displayelement—only include parts of the word itself, e.g., letters, and do notinclude punctuation characters, even though, as explained in the contextof FIG. 6, text may be parsed such that a punctuation mark is includedas part of the same display element as a word). Note that the ORPcharacter position shifts progressively further from the middle of theword as the total number of characters increases beyond threecharacters.

TABLE 1 Total Number of ORP Character ORP Character Text CharactersPosition Position Ratio  3 2 0.33  4 2 0.25  5 2 0.20  6 3 0.33  7 30.29  8 3 0.25  9 3 0.22 10 4 0.30 11 4 0.27 12 4 0.25 13 4 0.23 14-20 5NA

While TABLE I specifies a set of values for the ORP based on wholecharacters, it is possible to have other embodiments in which the ORP isdetermined as a proportion of the display element's pixel width. In onesuch alternative (described in detail in the context of FIG. 8) anoffset is calculated indicating the pixel offset from the fixed displaylocation for placing a first pixel at the beginning edge of the displayelement. (“Beginning” refers to the beginning from the perspective of areader reading in a reading direction of the language associated withthe word, e.g., for English, the left edge of the display element is the“beginning.”)

The average of the ORP character position ratio values in TABLE I yieldsan average ORP character position ratio of 0.265. This can be used todetermine the ORP offset to position a text in terms of pixels from theORP to the first pixel in the text, according to the following formula:

ORP  Offset = (Width  *  Average  ORP  Character  Position  Ratio) + (0.5*  Average  Character  Width)

where Width is the total width of the text (e.g., a word to bedisplayed) in pixels and Average Character Width is the Width divided bythe total number of characters in the text. This will account for theuse of proportionally spaced fonts, as both the Width and AverageCharacter Width will change depending upon various combinations ofcharacters. Different formulas or different distributions for the valuesof the ORP character position can be incorporated into otherembodiments. Note that in the ORP position ratio method (sometimesreferenced herein as the offset method), the optimal recognitionposition is at a position that can be determined to be at a specificproportion of the display element's width from the beginning of theword. This position will be referenced herein as the “optimalproportionate position.”

Note that although, as used herein, “length” is generally used toreference the length of words in terms of characters and the length ofsentences in terms of words, “width” on the other hand is generally usedto refer to the width of characters and words in terms of pixels.However, “width” and “length” in these contexts both refer to the same“dimension” of words and characters in the sense that they refer to thedimension extending parallel to the direction of reading.

FIG. 2a shows a basic ORP-RSVP display 200 in accordance with the firstembodiment of the present invention. The ORP-RSVP display 200 canaccommodate text of up to 20 characters in length without saccades,although it is preferred to limit the display to 13 characters forimproved comprehension. Words longer than 13 characters can behyphenated and displayed as two consecutive segments. Research hasconfirmed that approximately two-thirds of the users preferred thehyphenated technique over the single display of the full word. Fixeddisplay location 201 is positioned within the display 200 to accommodateat least four characters to its left and can be identified with hashmarks 202. Other identifiers such as circles, colors or textures may beused. FIG. 2b shows how a circulating arrow 203 can be used to directthe user's eye to focus at fixed display location 201 before the wordsare serially presented. A countdown indicator 204 may also be utilizedto indicate the amount of time before the words begin to be seriallypresented.

FIG. 2c illustrates positioning of the word “present” in ORP-RSVPdisplay 200. When the serial presentation begins, the first word isdisplayed in the ORP-RSVP display 200 such that ORP character 205 ispositioned at fixed display location 201. In the example in FIG. 2c ,the total number of characters in the word “present” is seven and so,from TABLE I, the 3^(rd) character “e” is positioned at fixed displaylocation 201. A colored font, such as a red font, may be utilized toemphasize the ORP character 205 as shown in FIG. 2c . FIG. 2d shows thedisplay of the longer word “presentation”, where the 5^(th) character isthe ORP character 205 and is displayed at fixed display location 201.

FIG. 3 is a block diagram of computer application 300 in accordance withan embodiment of the present invention to be utilized on an electronicdevice which includes a digital processor, memory, and a display (and/orthat is adapted for communication with a separate display). Computerapplication 300 is designed to accomplish text display in an ORP-RSVPdisplay such as ORP-RSVP display 200 on a display such as display 205.User interface subsystem 301 provides features for user interaction viaa graphical windowing system, including, in certain cases, windows,menus, dialogs, and similar features, as well as input selection meansfrom an input device such as a mouse, keypad, touchpad, touch stick, joystick, touch-screen, natural user interface, or voice recognitionsystem. User interface 301 enables the user to select text to bedisplayed, either in standard formats or text that has beenpre-processed into the necessary ORP display format, as well as to makeor change display settings. Text to be processed by application 300 maybe stored in memory 302 in a variety of standard formats, such as xml,txt, pdf, and doc. The ORP text processor subsystem 303 converts thestored text into the format necessary for display by ORP displayprocessor 307. It contains text parser subsystem 304, display elementconstructor 305, and data repository 306 which stores the processed textas display elements with display parameters. ORP display processorsubsystem 307 accesses the text from the in-memory data repository 306or from a stored ORP file 311 and prepares it for RSVP presentation inthe ORP-RSVP display 200 on the electronic device display 205. The ORPdisplay processor 307 also includes, in this example, display settingsmodule 308, which enables the user to make or change display settingssuch as the overall speed in average words-per-minute or average displaytime of words.

FIG. 4 provides a high level flow chart of processing 400 whichimplements information processing of computer application 300 of FIG. 3.A user provides user manual input 401 which is received by userinterface 301 (see FIG. 3). In response to user manual input 401, step402 selects the text to be presented. For example, a selection of a textfile from a list may be made using a mouse, keypad, or touch-screen. Aselection may also be made from within a full text that is currentlydisplayed. In this example, it is assumed text selected to be displayedis stored on the electronic device. Step 403 retrieves the stored textdata. However, in alternative examples, the text may be retrieved from aremote device. ORP text processor 303 then initiates step 404 to loadthe data and uses text parser 302 to parse the text to identify sections(such as paragraphs, chapters, etc.), sentences, words, numeric figures,and punctuation marks. Display element constructor 305 then initiatesstep 405 to create an array sequence of display elements, including theinsertion of a blank element at the end of each sentence.

Step 405 also calculates parameters for the display time of each displayelement. While, in alternative embodiments, it is possible to displayeach element for the same amount of time, it has been demonstratedempirically that a longer display time is beneficial for comprehensionof longer words. It has also been demonstrated empirically that a longerpause between sentences is beneficial for comprehension of longersentences.

FIG. 5a provides a set of recommended values for a text element displaymultiplier 502 as a function of the text element character length 501.FIG. 5b provides a set of recommended values for the blank elementdisplay multiplier 504 as a function of the number of text elements inthe sentence 503. The calculated display parameters are then stored foreach display element in the array to create the in-memory representation406, which may also be stored as a file 311 in non-volatile memory.

Returning to the description of FIG. 4, step 408 adjusts the displaytime parameter of each display element based on a setting of the overallspeed which has been selected at step 407 based on user manual input401. As referenced above, the ORP display processor 307 includes displaysettings module 308 which stores the display settings, including aprofile that has been previously selected by the user. In addition tothe overall speed setting, the display settings may also include optionsfor other settings, for example the initial display speed (providing aramp from a lower speed at the start to the higher overall speedsetting), the color of the display background, the color or texture ofthe ORP indicators, and the text font type and size. The ORP displayprocessor 307 then carries out step 409 to display each display elementsequentially for its adjusted display time with its ORP characterpositioned at fixed display location 201 in ORP-RSVP display 200 on theelectronic device display 205 if using the ORP character positionmethod. If using the ORP ratio position method, the ORP displayprocessor 307 carries out step 409 to display each display elementsequentially for its adjusted display time with the first characterpositioned at a distance from fixed display location 201 equal to theamount of the ORP offset calculated for that specific display element.

FIG. 6 provides a flow chart of processing 600 which illustrates furtherdetails of processing carried by computer application 300 of theembodiment of FIG. 3. Specifically, processing 600 is carried out by OPRtext processor 303 of FIG. 3. Step 601 receives text. Step 602 createsan empty array of ordered pairs for display elements and their displayparameters. Counters for words-in-text (“wit”), and relative textduration (“rtd”) are initialized at 0. Step 603 parses the text to splitit into sentences and inserts blank elements at the end of eachsentence. Step 604 selects the sentence to be processed by step 605(which is either the first sentence on an initial processing loop, or anext sentence in response to step 625). For that sentence, step 605spits it into words and initializes the counter for words-in-sentence(“wis”) at zero. Step 606 selects the word to be processed by step 607(which is either the first word on an initial processing loop for aparticular sentence, or a next word in response to step 616). For thatword, step 607 calculates the word length (“wl”) with punctuationtrimmed from that word. In this embodiment, wl is calculated withoutincluding punctuation for purposes of calculating a display multiplierand determining an optimal recognition position character or offset(described later). However, alternative embodiments may utilizepunctuation (or certain types of punctuation) for calculating certaindisplay parameters, particularly to the extent particular empiricalresults dictate that factoring in punctuation can benefit readingresults.

Steps 608 then set the multiplier (“m”) based on the value of wl,progressively testing wl until the appropriate value of m is selected.The values of m specified in steps 608 have been determined empirically,but different values could be utilized in other embodiments to providefor additional display time for words of varying length. Step 609determines if wl is greater than thirteen. If the result of step 609 isyes, then step 610 sets m to 1.6; if the result of step 609 is no, thenstep 611 determines whether wl is greater than seven. If the result ofstep 611 is yes, then step 612 sets m to 1.3; if the result of step 611is no, then step 613 sets m to 1.0. Once m is set (step 610, 612, or613), step 614 then tests to see if the display element is a blankelement (wl=0); if the result of step 614 is no, then step 615increments the wis and with counters by 1 and increments the rtd counterby the value of m. Step 616 then directs selection of the next word andprocessing 600 returns to step 606 so that the next word can beprocessed.

If the result of step 614 is yes, (i.e., the current display element isa blank element), the end of a sentence has been reached (step 603inserts blank elements between sentences). Steps 617 then set the blankelement multiplier based on the value of wis, progressively testing thevalue until the appropriate value of m is selected. The values of thewis thresholds and corresponding values of m specified in steps 617 havebeen determined empirically but different values could be utilized inother embodiments to provide for additional display time of the blankelement for sentences of varying length. Step 618 determines whether wisis greater than twenty-two. If the result of step 618 is yes, then step619 sets m to 3.3. If the result of step 620 is no, then step 620determines whether wis is greater than seven. If the result of step 620is yes, then step 621 sets m to 2.2. If the result of step 620 is no,then step 622 sets m to 1.0. Once m is set for the end-of-sentence blankelement (step 619, 621, or 622), step 623 stores all display elements(including word display elements processed by steps 608 and theend-of-sentence blank display element processed by steps 618) for thatsentence in pairs with corresponding multiplier values in the array 306.Step 624 determines whether the end of the text has been reached. If theresult of step 624 is no, then processing 600 returns to step 604 sothat the next sentence can be processed. If the result of step 624 isyes, then text processing ends at step 626.

FIG. 7 provides a flow chart of processing 700 which illustrates furtherdetails of processing carried by computer application 300 of theembodiment of FIG. 3. Specifically, processing 700 is carried out by OPRdisplay processor 307 of FIG. 3. In the embodiment illustrated in FIG.7, ORP display processor 307 implements the ORP character positionmethod previously described. In particular, an ORP character isidentified and placed at fixed display location 201. Processing 700begins at step 701 which receives processed text from ORP text processor303 or from stored text data 311.

Step 702 selects and loads the word-multiplier pair to be processed fordisplay (which is either the first pair in the stored array referencedin 623 of FIG. 6 on an initial processing loop, or a next pair inresponse to step 721). Step 703 determines the length in characters(“word length” or “wl”) of the word to be displayed. As previouslydiscussed in the context of FIG. 6, the word length in this embodimentis the number of characters excluding punctuation. Note that, inalternative embodiments, the word length calculated at step 607 of FIG.6 could be stored in the word array (along with the display element andthe word multiplier) so that it does not have to be recalculated in step703.

Steps 704 then sets the ORP character (“orpc”) based on the value of wl,progressively testing the length until the appropriate value of orpc isselected for that word, in accordance with the recommendations in TABLEI. Step 705 determines if wl=1. If the result of step 705 is yes, thenstep 706 sets the orpc to 1 and processing 700 proceeds to step 714. Ifthe result of step 705 is no, then step 707 determines if wl is greaterthan 1 and less than 6. If the result of step 707 is yes, then step 708sets the orpc to 2 and processing 700 proceed to step 714. If the resultof step 707 is no, then step 709 determines if wl is greater than 5 andless than 10. If the result of step 709 is yes, then step 710 sets theorpc to 3 and processing 700 proceeds to step 714. If the result of step709 is no, then step 711 determines if wl is greater than 9 and lessthan 14. If the result of step 711 is yes, then step 712 sets the orpcto 4 and processing 700 proceeds to step 714. If the result of step 711is no, the step 713 sets the orpc to 5 and processing 700 proceeds tostep 714.

Step 714, displays ORP character (as selected by step 706, 608, 710,712, or 713) at fixed display location 201 in ORP display 200 (asillustrated by way of example in the window just to the right of step714 in FIG. 7). Step 715 then displays the characters to the left of theORP character one by one with the offset defined by the font width (asillustrated by way of example in the window just to the right of step715 in FIG. 7). Step 716 then displays characters to the right of theORP character are then displayed in the same manner (as illustrated byway of example in the window just to the right of step 716 in FIG. 7).

Step 717 then tests to see if the end of the text has been reached. Ifthe result of step 717 is no, then step 718 calculates the average wordrelative duration (“awdr”) by dividing the rtd by the wit. Step 710 thencalculates the default update time (“dut”) by dividing the update time(“ut”) (which is retrieved from display settings module 308 of FIG. 3)by the awdr. Step 720 then sets a timer and the word is displayed for atime equal to the product of the relative time multiplier and the dut.Step 721 directs that that the next word-multiplier pair is selected andprocessing 700 returns to step 702 so that the next word-multiplier canbe processed. If the result of step 717 is yes, then display processingends at step 722.

FIG. 8 provides a flow chart of processing 800 in accordance with analternative to the embodiment of FIG. 7 for the processing of ORPdisplay processor 307. Specifically, in the embodiment of FIG. 8, theORP ratio position method described earlier is used. Rather than usingan identified ORP character, processing 800 utilizes a proportionateposition for the optimal recognition position which, multiplied by theword with, provides an offset value from the fixed display location forplacing a pixel that is at the beginning of the word.

Step 801 receives text from the ORP text processor 303 or from text datastore 311. Step 802 selects and loads the word-multiplier pair to beprocessed for display (which is either the first pair in the storedarray referenced in 623 of FIG. 6 on an initial processing loop, or anext pair in response to step 721). Step 803 then calculates the totalwidth of the word (“ww”) in pixels and the average character width(“acw”) in pixels. As previously discussed, the word “width” in thiscontext is calculated along the same dimension (in line with the readingdirection) as is the word “length” referenced in the context earlierfigures. The difference is that as used herein, “ww” is measured inpixels and “wl” is measured in number of characters.

Step 804 then determines the first pixel position for the display of theword in ORP-RSVP display 200 (an exemplary ORP display 200 is shown justto the left of step 805 in FIG. 8) by calculating the ORP ratio offset(“ORPRO”). In step 805, the word is displayed with the first pixel ofthe first character located at the ORPRO position 806 (which is adistance in pixels equal to the ORPRO from the fixed display location201). This may be referenced as the “beginning pixel” of the word fromthe perspective of a reading direction of a reader of the display. Notethat, for left to right languages, the beginning pixel is at the leftedge of the word. Depending on the shape of the beginning character,there may be multiple pixels located a distance of ORPRO from the fixeddisplay location (for example, in many fonts, the letter “b” wouldinclude several pixels at the left most edge of the word). As usedherein, the “beginning pixel” will simply refer to any pixel at thebeginning edge of the word.

When the beginning pixel is displayed at the ORPRO from fixed displaylocation 201, the ORP of the word, which in this case is identified asthe optimal proportionate position along the width of the word (ratherthan being identified as a particular character), will be displayed atfixed display location 201.

Step 807 tests to see if the end of the text has been reached. If theresult of step 807 is no, then then step 808 calculates the average wordrelative duration (“awdr”) by dividing the rtd by the wit. Step 809 thencalculates the default update time (“dut”) by dividing the update time(“ut”), which is retrieved from the display settings module 308, by theawdr. Step 810 then sets a timer and the word is displayed for a timeequal to the product of the relative time multiplier and the dut. Step811 directs that the next word-multiplier pair is selected andprocessing 800 returns to step 802 so that the next word-multiplier canbe processed. If the result of step 807 is yes, then display processing800 ends at step 812.

The example of FIG. 8 uses the average position ratio of characterposition ratios based on the values in TABLE I. However, as previouslyindicated other values could be used while still achieving benefits ofthe present invention. Such values may result in somewhat differentproportions of a word being displayed to the left (for left to rightlanguages) of the fixed display location. In some alternativeembodiments, the proportion of a word (in particular, at least wordsthat are greater than four characters in length) that is displayed fromthe word's beginning to the fixed display location is greater than orequal to 0.2 and less than or equal to 0.45.

As an alternative to processing all text before beginning the displayprocessing, it is possible to display each display element (e.g., aword) after it has been processed. Referencing such an alternative inthe context of modifying the processing order of steps shown in FIG. 6and FIG. 7 (which implements the ORP character position method), theorder of steps would be modified as follows: After step 615, theprocessing would proceed to step 703. After step 720, then theprocessing would return to step 606 in order to prepare the next wordfor display. If step 614 determined that it is a blank element, thenstep 617 would proceed in order to prepare the blank element for displayin step 714. Then the processing would return to step 624 to continuethe processing of the next sentence or it reaches the end of textprocessing and display processing.

Referencing such an alternative in the context of modifying theprocessing order of steps shown in FIG. 6 and FIG. 8 (which implementsthe ORP ratio position offset method), after step 615, the next stepwould be step 803. After step 810, the processing would then return tostep 606 in order to prepare the next word for display. If step 614determined that it was a blank element, then step 617 would proceed inorder to prepare the blank element for display in step 810. Then theprocessing returns to step 624 to continue the processing of the nextsentence or it reaches the end of text processing and displayprocessing.

In serial text display, saccades are most noticeably a problem for wordsthat are five or more characters in length. Therefore, a preferredembodiment of the present invention places the ORP at the fixed displaylocation at least for display elements that are five or more charactersin length. For such display elements (and for display elements of lengthfour), the optimal recognition position is off-center toward thebeginning of the display element (from the perspective of a reader ofthe display). However, while display of the ORP at the fixed displaylocation for words that are fewer than five characters length is notnecessary for achieving the benefits of particular embodiments of theinvention, in a preferred embodiment, words of lengths four or less arealso displayed using the ORP character position method or the ratioposition offset method (which, for word lengths of three or less, willnot necessarily result in the fixed display location being off centertoward the beginning of the word). However, when such words (length fouror less) are displayed at the fixed display location, exactly whichcharacter or proportionate position of these words is displayed at thefixed display location is not necessarily critical for minimizingsaccades. At the same time, however, displaying words of length four orless such that their optimal recognition position is at the fixeddisplay location does provide some smoothing benefit in that eyedisplacement from one word to the next is reduced, and therefore apreferred embodiment places an optimal recognition portions of allwords, including words of length four or less at the fixed displaylocation.

FIG. 9 illustrates several features that can be added to a basicembodiment of the present invention to improve its effectiveness. Userinterface 301 and ORP display 200 can be enhanced to enable the user tointeract with the display process. As illustrated in FIG. 9, standardcontrols including starting control 901, pausing control 904, repeatingcontrol 905, and fast forwarding control 906 to control display of thetext can be provided. A visual indicator 902 can be provided to indicatethe progress of the display as a fraction of the total amount of text tobe displayed. A slider 903 could also be used to enable jumping to anypoint in the text. An indicator 907 of the display speed in averagewords per minute could be provided, which could also enable the user tochange the speed during the presentation. A bookmark icon 909 couldenable the user to click and set a bookmark during the presentation, andprovide the means to restart the presentation at the point that thebookmark was set. A settings icon 908 could be provided to enable theuser to change for preferences for the presentation, such as the initialdisplay speed, the color of the display background, the color or textureof the ORP indicators, and the text font type and size.

Other embodiments would enable the invention to be deployed on a varietyof electronic devices, such as various computer operating systems,mobile phone operating systems, video gaming platforms, and portableelectronic devices such as digital watches, cameras, and music players.While the basic embodiment described herein provides for ORP processingof text that is stored locally on the electronic device, it is possiblethat the text in a standard format or preprocessed ORP format could bestreamed to the electronic device from a server via a wired or wirelessnetwork connection. While a preferred embodiment of the presentinvention is the display of text on small displays, if a large displayis available then it would be possible to display the full text in acompanion display, such that the progress through the text can beindicated by a moving highlight that corresponds to the word beingcurrently display in the ORP Display.

While the present invention has been particularly described with respectto the illustrated embodiments, it will be appreciated that variousalterations, modifications and adaptations may be made based on thepresent disclosure and are intended to be within the scope of thepresent invention. While the invention has been described in connectionwith what are presently considered to be the most practical andpreferred embodiments, it is to be understood that the present inventionis not limited to the disclosed embodiment but, on the contrary, isintended to cover various modifications and equivalent arrangementsincluded within the scope of the appended claims.

1. A method of displaying text on an electronic display, the text beingdividable into a plurality of respective display elements, at least someof the plurality of respective display elements corresponding torespective sets of words, the respective sets of words comprising nomore than 20 characters in length, a word comprising a recognizable setof one or more characters, at least some of the respective sets of wordshaving an optimal recognition position, the method comprising: seriallydisplaying, on the electronic display, a plurality of respective displayelements such that an optimal recognition position of at least somedisplay elements of the plurality of respective display elements isdisplayed at a substantially same location on the electronic display,referred to as a fixed display location.
 2. The method of claim 1wherein the at least some display elements include display elementshaving a length of greater than three characters.
 3. The method of claim1 wherein the at least some display elements include display elementshaving a length of greater than four characters.
 4. The method of claim1 further comprising providing a visual aid to mark the fixed displaylocation.
 5. The method of claim 4 wherein the visual aid comprisesvertical lines above and below the fixed display location.
 6. The methodof claim 4 wherein providing the visual aid comprises using a differentcolor font for a character displayed at the fixed display location thanis used for other characters.
 7. The method of claim 1 wherein acharacter is at least one of a group consisting of an alphabeticcharacter, a numeric character, and a symbolic character.
 8. The methodof claim 1 wherein the optimal recognition position is identified as acharacter within a display element (“an optimal recognition positioncharacter”) and the optimal recognition position character is displayedat the fixed display location.
 9. The method of claim 8 wherein if atotal number of characters in the display element is three, four, orfive, then the optimal recognition position character is the secondcharacter in the display element.
 10. The method of claim 8 wherein ifthe total number of characters in the display element is six, seven,eight, or nine, then the optimal recognition position character is thethird character in the display element.
 11. The method of claim 8wherein if the total number of characters in the display element is ten,eleven, twelve, or thirteen, then the optimal recognition positioncharacter is the fourth character in the display element.
 12. The methodof claim 11 wherein if the total number of characters is fourteen,fifteen, sixteen, seventeen, eighteen, nineteen or twenty, then theoptimal recognition position character is the fifth character in thedisplay element.
 13. The method of claim 8 wherein the optimalrecognition character is displayed at the fixed display location priorto display of characters in the display element that are located to theleft and right of the optimal recognition character.
 14. The method ofclaim 1 wherein the optimal recognition position of a display element ofthe at least some display elements is located at a position along areading direction of the display element that is a distance in pixelsfrom a beginning of the display element, the distance in pixels being aproportion of the display element's pixel width (“optimal proportionateposition”).
 15. The method of claim 14 wherein the proportion of thedisplay element's pixel width is a function of at least the displayelement's number of characters and an empirically determined recognitionposition ratio.
 16. The method of claim 15 wherein the proportion of thedisplay element's pixel width is equal to the empirically determinedrecognition position ratio added to a quotient of 0.5 divided by thenumber of characters in the display element.
 17. The method of claim 16wherein the empirically determined recognition ratio is an averageposition ratio of respective optimal recognition position characters forrespective display elements from a length of three characters to alength of at least thirteen characters.
 18. The method of claim 17wherein the average position ratio is equal or substantially equal to0.265.
 19. The method of claim 14 wherein the distance in pixels fromthe beginning of the display element is greater than or equal to 0.20and less than or equal to 0.45 of the display element's total width. 20.The method of claim 15 wherein the optimal proportionate positionprovides an offset amount for a pixel at the beginning of the displayelement (“the beginning pixel”), the method further comprisingdisplaying the display element such that the beginning pixel of thedisplay element is at a position that is the offset amount away from thefixed display location. 21-85. (canceled)